package org.poseidon.report.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.poseidon.common.annotation.Excel;
import org.poseidon.report.domain.BuMilestone;

import java.util.Date;
import java.util.List;

/**
 * @Author Moro
 * @Date 2022/2/27 21:45
 * @title BuProjectBaseVO
 */
@Data
@ApiModel(value = "项目基础vo")
public class BuProjectBaseVO {
    @ApiModelProperty(value = "id")
    private Long id;


    /** 项目编码 */
    @ApiModelProperty(value = "项目编码")
    private String projectCode;

    /** 项目名 */
    @Excel(name = "项目名")
    @ApiModelProperty(value = "项目名")
    private String projectName;

    /** 项目负责人 */
    @Excel(name = "项目负责人")
    @ApiModelProperty(value = "项目负责人")
    private String projectManager;

    /** 项目内容 */
    @Excel(name = "项目内容")
    @ApiModelProperty(value = "项目内容")
    private String projectContent;

    /** 项目开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "项目开始时间")
    @Excel(name = "项目开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date projectBegin;

    /** 项目结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "项目结束时间")
    @Excel(name = "项目结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date projectEnd;

    /** 关联产品ID */
    @Excel(name = "关联业务域ID")
    @ApiModelProperty(value = "关联业务域ID")
    private Long productId;

    @ApiModelProperty(value = "里程碑信息列表")
    private List<BuMilestone> milestones;

}
